package com.mutual.reins.interf.entity;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableId;

import java.time.LocalDate;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;

import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 
 * </p>
 *
 * @author CodeGenerate
 * @since 2021-03-31
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("REINSPOLICYCEDED")
public class ReinsPolicyCeded implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 投保单号
     */
    @TableId("PROPOSALNO")
    private String proposalNo;

    /**
     * 保单号
     */
    @TableField("POLICYNO")
    private String policyNo;

    /**
     * 确认状态
0：初始状态
1：通过
2：不通过
9：提交再保


     */
    @TableField("VERIFYFLAG")
    private String verifyFlag;

    /**
     * 分入类型
0-直接分入
1-转分分入

     */
    @TableField("CEDEDTYPE")
    private String cededType;

    /**
     * 对方保单号

     */
    @TableField("OUTPOLICYNO")
    private String outPolicyNo;

    /**
     * 起保日期
     */
    @TableField("ORISTARTDATE")
    private LocalDate oriStartDate;

    /**
     * 终保日期
     */
    @TableField("ORIENDDATE")
    private LocalDate oriEndDate;

    /**
     * 币别
     */
    @TableField("ORICURRENCY")
    private String oriCurrency;

    /**
     * 原保单保额
     */
    @TableField("ORIAMOUNT")
    private BigDecimal oriAmount = new BigDecimal("0.00");

    /**
     * 原保单保费
     */
    @TableField("ORIPREMIUM")
    private BigDecimal oriPremium = new BigDecimal("0.00");

    /**
     * 原分出人占比
     */
    @TableField("OUTSHARERATE")
    private BigDecimal outShareRate  = new BigDecimal("0.000000");

    /**
     * 分出人
     */
    @TableField("OUTREINSCODE")
    private String outReinsCode;

    /**
     * 分出人名称
     */
    @TableField("OUTREINSNAME")
    private String outReinsName;

    /**
     * 分出比例
     */
    @TableField("SHARERATE")
    private BigDecimal shareRate;

    /**
     * 分入保额
     */
    @TableField("INAMOUNT")
    private BigDecimal inAmount;

    /**
     * 分入保费
     */
    @TableField("INPREMIUM")
    private BigDecimal inPremium;

    /**
     * 手续费比例

     */
    @TableField("COMMRATE")
    private BigDecimal commRate = new BigDecimal("0.000000");

    /**
     * 手续费
     */
    @TableField("COMMISSION")
    private BigDecimal commission = new BigDecimal("0.00");

    /**
     * 税比例
     */
    @TableField("TAXRATE")
    private BigDecimal taxRate = new BigDecimal("0.000000");

    /**
     * 税
     */
    @TableField("TAX")
    private BigDecimal tax = new BigDecimal("0.00");

    /**
     * 其它费用比例
     */
    @TableField("OTHRATE")
    private BigDecimal othRate = new BigDecimal("0.000000");

    /**
     * 其它费用
     */
    @TableField("OTHFEE")
    private BigDecimal othFee = new BigDecimal("0.00");

    /**
     * 出单费比例
     */
    @TableField("BILLSFEERATE")
    private BigDecimal billsFeeRate = new BigDecimal("0.000000");

    /**
     * 经纪费比例 
     */
    @TableField("BROKERAGERATE")
    private BigDecimal brokerageRate = new BigDecimal("0.000000");

    /**
     * 我司比例
     */
    @TableField("SIGNEDLINE")
    private BigDecimal signedLine = new BigDecimal("0.000000");

    /**
     * 接受人类型
     */
    @TableField("REINSCEDEDTYPE")
    private String reinsCededType;

    /**
     * 原始分出人
     */
    @TableField("OUTFREINSCODE")
    private String outfReinsCode;

    /**
     * 原始分出人名称
     */
    @TableField("OUTFREINSNAME")
    private String outfReinsName;

    /**
     * 分入保费销项税额
     */
    @TableField("INVAT")
    private BigDecimal inVat = new BigDecimal("0.00");

    /**
     * 经纪费
     */
    @TableField("BROKERAGEFEE")
    private BigDecimal brokerageFee = new BigDecimal("0.00");

    /**
     * 经纪费进项税
     */
    @TableField("BROKERAGEVAT")
    private BigDecimal brokerageVat = new BigDecimal("0.00");

    /**
     * 代扣代缴经纪费进项税
     */
    @TableField("BROKERAGEWITHHOLDVAT")
    private BigDecimal brokerageWithholdVat = new BigDecimal("0.00");

    /**
     * 经纪费进项税附加
     */
    @TableField("BROKERAGEADDITIONALTAX")
    private BigDecimal brokerageAdditionalTax = new BigDecimal("0.00");

    /**
     * 出单费
     */
    @TableField("BILLSFEE")
    private BigDecimal billsFee = new BigDecimal("0.00");

    /**
     * 经纪费税比例
     */
    @TableField("BROKERAGEVATRATE")
    private BigDecimal brokerageVatRate = new BigDecimal("0.000000");


}
